ListNode* ReverseList(ListNode* head) {
        // write code here
        if(head == nullptr || head->next ==nullptr){
                return head;
        }
        
        ListNode *curr = head;
        ListNode *prev =nullptr;
        //首先使得 prev  curr  Next  三个指针分别指向NULL  头结点  头结点
        while(curr != nullptr){
                ListNode *Next = curr->next;//Next指针指向curr当前节点的下一个节点
                curr->next = prev;//让curr当前节点的指针指向上一个节点
                prev = curr;//将上一个节点指针指向到当前节点
                curr = Next;//将当前curr指针指向下一个Next节点
        }
        //最终情况是prev指向原链表最后一个节点  Next和curr都指向NULL
        return prev;
    }
